package com.ruifu.common.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruifu.common.eneity.BaseEntityPlus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

/**
 * 物料传输
 *
 * @author nyr
 * @create 2019/12/23
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("materiel")
@ApiModel("materiel-物料实体")
public class Materiel extends BaseEntityPlus implements Serializable {
    private static final long serialVersionUID = -8844669039947692851L;

    /**
     * 物料id
     */
    @TableId(value = "ml_id", type = IdType.AUTO)
    private Long mlId;

    /**
     * 物料编号
     */
    @TableField(value = "ml_code")
    @ApiModelProperty("物料编号")
    private String mlCode;

    /**
     * 物料中文名称
     */
    @TableField(value = "ml_name")
    @ApiModelProperty("物料中文名称")
    private String mlName;

    /**
     * 物料英文名称
     */
    @TableField(value = "ml_english_name")
    @ApiModelProperty("物料英文名称")
    private String mlEnglishName;

    /**
     * 物料类型id
     */
    @TableField(value = "ml_type_id")
    private Long mlTypeId;

    /**
     * 类别 s 标准件；p 零部件；m 原材料； g产品
     */
    @TableField(value = "ml_class")
    @ApiModelProperty("类别 s 标准件；p 零部件；m 原材料； g产品")
    private String mlClass;

    /**
     * 业务域 设计  工艺  制造  服务  销售  财务
     */
    @TableField(value = "ml_business_areas")
    @ApiModelProperty("业务域")
    private String mlBusinessAreas;

    /**
     * 前域物料id
     */
    @TableField(value = "ml_anterior_domain_id")
    private Long mlAnteriorDomainId;


    /**
     * 模型特性：0-配置模型 1-参数模型 （配置模型-部件 参数模型-零件）
     */
    @TableField(value = "if_conf_model")
    @ApiModelProperty("模型特性：0-配置模型 1-参数模型 （配置模型-部件 参数模型-零件）")
    private Integer ifConfModel;

    /**
     * 模型/实物件：0-模型 1-实物件
     */
    @TableField(value = "if_material_object")
    @ApiModelProperty("模型/实物件：0-模型 1-实物件")
    private Boolean ifMaterialObject;

    /**
     * 是否标准件：0-否 1-国标件 2-行标件 3-企业标准件
     */
    @TableField(value = "if_standardparts")
    @ApiModelProperty("是否标准件：0-否 1-国标件 2-行标件 3-企业标准件")
    private Integer ifStandardparts;

    /**
     * 物料模型id
     */
    @TableField(value = "ml_model_id")
    private Long mlModelId;

    /**
     * 最新版本id
     */
    @TableField(value = "ml_new_version_id")
    private Long mlNewVersionId;

    /**
     * 最新发布版本id
     */
    @TableField(value = "ml_new_issue_version_id")
    private Long mlNewIssueVersionId;
}
